package com.kingyea.mobilepolice.user.dao;

import com.kingyea.mobilepolice.user.bean.User;
import com.kingyea.mobilepolice.util.BasePage;
import org.apache.ibatis.annotations.Param;

import java.util.List;
import java.util.Map;

/**
 * @author Mr.Lin
 * @version v1.0.0
 * @description UserMapper
 * @date Created in 2018-03-30 15:28:59
 */
public interface UserMapper {

    /**
     * 通过ID获取对象
     */
    User getById(@Param("id") Integer id);

    /**
     * @Description: 根据唯一序列号查询用户
     * @Param: [id]
     * @return: com.kingyea.mobilepolice.user.bean.User
     * @Author: cxc
     * @Date: 2018.04.10 14:34
     */
    User getByUserId(@Param("userId") String userId);

    /**
     * @Description: 通过用户登录名查询对象 _login_id
     * @Param: [userName]
     * @return: com.kingyea.mobilepolice.user.bean.User
     * @Author: cxc
     * @Date: 2018.04.03 12:02
     */
    User getByUserName(@Param("userName") String userName);

    /**
     * 通过ID删除对象
     */
    int deleteById(@Param("id") String id);

    /**
     * 更新对象
     */
    int update(User obj);

    /**
     * 保存对象
     */
    int save(User obj);

    /**
     * 查询列表
     */
    List<User> search(BasePage<?> condition);

    List<User> listByOrgId(Map<String, Object> map);

    /**
     * 通过部门id获取对象
     * @param orgId
     * @return
     */
    List<User> getByOrgId(String orgId);

    /**
     * 通过用户名模糊查询
     * @param name
     * @return
     */
    List<User> searchByName(@Param("name") String name);

    /**
     * 查询全部用户
     * @return
     */
    List<User> searchAll();

    User fingUserId(@Param("userId")String userId);


}
